import { identityCodeValid, identityMobile } from '@/libs/tools'
import dict from '@/libs/dict'
// import iViewThemes from 'iview-layout-themes'
// const xeUtils = iViewThemes.util.xeUtils

// 工作者导入数据校验处理
export const validateWorker = (item, index) => {
  let error = false
  // 校验公司名称
  if (!item.work_name) {
    item.work_name = ' （公司名称不能为空）'
    item.cellClassName.work_name = 'trouble-cell'
    error = true
  } else if (item.work_name.length > 30) {
    item.work_name = item.work_name + ' （公司名称长度大于30个字符）'
    item.cellClassName.work_name = 'trouble-cell'
    error = true
  }
  // 校验公司编码
  if (item.work_no === undefined || item.work_no === '') {
    item.work_no = ' （公司编码为空）'
    item.cellClassName.work_no = 'trouble-cell'
    error = true
  } else if (dict.excelWorkerNo.indexOf(item.work_no.trim()) === -1) {
    item.work_no = item.work_no + ' （公司编码内容错误）'
    item.cellClassName.work_no = 'trouble-cell'
    error = true
  }
  // if (!item.work_no) {
  //   item.work_no = ' （公司编码不能为空）'
  //   item.cellClassName.work_no = 'trouble-cell'
  // } else if (item.work_no.length > 20) {
  //   item.work_no = item.work_no + ' （公司编码长度大于20个字符）'
  //   item.cellClassName.work_no = 'trouble-cell'
  // }
  // 校验所属网点
  if (item.belong && item.belong.length > 30) {
    item.belong = item.belong + ' （所属网点长度大于30个字符）'
    item.cellClassName.belong = 'trouble-cell'
    error = true
  }
  // 校验网点地址
  if (item.address && item.address.length > 255) {
    item.address = item.address + ' （网点地址长度大于255个字符）'
    item.cellClassName.address = 'trouble-cell'
    error = true
  }
  // 校验经度
  if (item.longitude && item.longitude.length > 30) {
    item.longitude = item.longitude + ' （经度长度大于30个字符）'
    item.cellClassName.longitude = 'trouble-cell'
    error = true
  }
  // 校验纬度
  if (item.latitude && item.latitude.length > 30) {
    item.latitude = item.latitude + ' （纬度长度大于30个字符）'
    item.cellClassName.latitude = 'trouble-cell'
    error = true
  }
  // 校验网店电话
  if (item.tel && item.tel.length > 20) {
    item.tel = item.tel + ' （网店电话长度大于20个字符）'
    item.cellClassName.tel = 'trouble-cell'
    error = true
  }
  // 校验区域
  if (item.area && item.area.length > 20) {
    item.area = item.area + ' （区域长度大于20个字符）'
    item.cellClassName.area = 'trouble-cell'
    error = true
  }
  // 校验类型
  if (item.type === undefined || item.type === '') {
    item.type = ' （类型为空）'
    item.cellClassName.type = 'trouble-cell'
    error = true
  } else if (dict.excelWorkerType.indexOf(item.type.toString().trim()) === -1) {
    item.type = item.type + ' （类型内容错误）'
    item.cellClassName.type = 'trouble-cell'
    error = true
  }
  // 校验姓名
  if (!item.name) {
    item.name = ' （姓名不能为空）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  } else if (item.name.length > 20) {
    item.name = item.name + ' （姓名长度大于20个字符）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  }
  // 校验证件号码
  const idcardRtn = identityCodeValid(item.card_no)
  if (!idcardRtn.pass) {
    item.card_no = item.card_no + ' （' + idcardRtn.tip + '）'
    item.cellClassName.card_no = 'trouble-cell'
    error = true
  }
  // 校验手机号
  const phoneRtn = identityMobile(item.phone)
  if (!phoneRtn) {
    item.phone = item.phone + ' （手机号格式不正确）'
    item.cellClassName.phone = 'trouble-cell'
    error = true
  }
  // 校验健康状态
  if (item.health_type === undefined || item.health_type === '') {
    item.health_type = ' （健康状态为空）'
    item.cellClassName.health_type = 'trouble-cell'
    error = true
  } else if (dict.excelWorkerHealth.indexOf(item.health_type.toString().trim()) === -1) {
    item.health_type = item.health_type + ' （健康状态内容错误）'
    item.cellClassName.health_type = 'trouble-cell'
    error = true
  }
  // 校验户籍地（省）
  if (item.loc_province && item.loc_province.length > 20) {
    item.loc_province = item.loc_province + ' （户籍地（省）长度大于20个字符）'
    item.cellClassName.loc_province = 'trouble-cell'
    error = true
  }
  // 校验户籍地（市）
  if (item.loc_city && item.loc_city.length > 20) {
    item.loc_city = item.loc_city + ' （户籍地（市）长度大于20个字符）'
    item.cellClassName.loc_city = 'trouble-cell'
    error = true
  }
  // 校验人员状态
  if (item.person_type === undefined || item.person_type === '') {
    item.person_type = ' （人员状态为空）'
    item.cellClassName.person_type = 'trouble-cell'
    error = true
  } else if (dict.excelWorkerPersonType.indexOf(item.person_type) === -1) {
    item.person_type = item.person_type + ' （人员状态内容错误）'
    item.cellClassName.person_type = 'trouble-cell'
    error = true
  }
  if (error) {
    let num = index + 1
    console.log('错误人的数据在' + num + '行', item
    )
  }
  return { error: error, item: item }
}
// 场所导入数据校验处理
export const validatePlace = (item, index) => {
  let error = false
  // 校验序号
  if (item.no && item.no.length > 8) {
    item.no = item.no + ' （序号长度大于8个字符）'
    item.cellClassName.no = 'trouble-cell'
    error = true
  }
  // 校验场所名称
  if (!item.place_name) {
    item.place_name = ' （场所名称不能为空）'
    item.cellClassName.place_name = 'trouble-cell'
    error = true
  } else if (item.place_name.length > 50) {
    item.place_name = item.place_name + ' （场所名称长度大于50个字符）'
    item.cellClassName.place_name = 'trouble-cell'
    error = true
  }
  // 校验场所地址
  if (!item.place_address) {
    item.place_address = ' （场所地址不能为空）'
    item.cellClassName.place_address = 'trouble-cell'
    error = true
  } else if (item.place_address.length > 255) {
    item.place_address = item.place_address + ' （场所地址长度大于255个字符）'
    item.cellClassName.place_address = 'trouble-cell'
    error = true
  }
  // 校验经度
  // if (item.lat && item.lat.length > 20) {
  //   item.lat = item.lat + ' （经度长度大于20个字符）'
  //   item.cellClassName.lat = 'trouble-cell'
  //   error = true
  // }
  // 校验纬度
  // if (item.lan && item.lan.length > 20) {
  //   item.lan = item.lan + ' （纬度长度大于20个字符）'
  //   item.cellClassName.lan = 'trouble-cell'
  //   error = true
  // }
  // 校验联系人姓名
  if (!item.name) {
    item.name = ' （联系人姓名不能为空）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  } else if (item.name.length > 20) {
    item.name = item.name + ' （联系人姓名长度大于20个字符）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  }
  // 校验联系电话
  if (!item.mobile) {
    item.mobile = ' （联系电话不能为空）'
    item.cellClassName.mobile = 'trouble-cell'
    error = true
  } else if (item.mobile.length > 20) {
    item.mobile = item.mobile + ' （联系电话长度大于20个字符）'
    item.cellClassName.mobile = 'trouble-cell'
    error = true
  }
  // 校验备注
  if (item.remarks && item.remarks.length > 255) {
    item.remarks = item.remarks + ' （备注长度大于255个字符）'
    item.cellClassName.remarks = 'trouble-cell'
    error = true
  }
  // 校验场所类别
  // if (item.place_type && item.place_type.length > 20) {
  //   item.place_type = item.place_type + ' （场所类别长度大于20个字符）'
  //   item.cellClassName.place_type = 'trouble-cell'
  //   error = true
  // }
  if (error) {
    let num = index + 1
    console.log('错误的数据在' + num + '行', item)
  }
  return { error: error, item: item }
}
// 办理数据校验处理
export const validateHandle = (item, index) => {
  let error = false
  // 校验身份证号
  const idcardRtn = identityCodeValid(item.card_no)
  if (!idcardRtn.pass) {
    item.card_no = item.card_no ? item.card_no : ''
    item.card_no = item.card_no + ' （' + idcardRtn.tip + '）'
    item.cellClassName.card_no = 'trouble-cell'
    error = true
  }
  // 校验联系人姓名
  if (!item.name) {
    item.name = ' （联系人姓名不能为空）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  } else if (item.name.length > 20) {
    item.name = item.name + ' （联系人姓名长度大于20个字符）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  }
  // 校验联系电话
  if (item.mobile && item.mobile.length > 20) {
    item.mobile = item.mobile + ' （联系电话长度大于20个字符）'
    item.cellClassName.mobile = 'trouble-cell'
    error = true
  }
  if (error) {
    let num = index + 1
    console.log('错误的数据在' + num + '行', item)
  }
  return { error: error, item: item }
}
// 外籍白名单数据校验处理
export const validateWhiteForeign = (item, index) => {
  let error = false
  // 校验姓名
  if (!item.name) {
    item.name = ' （姓名不能为空）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  } else if (item.name.length > 100) {
    item.name = item.name + ' （联系人姓名长度大于100个字符）'
    item.cellClassName.name = 'trouble-cell'
    error = true
  }
  // 校验证件号
  if (!item.card_no) {
    item.card_no = ' （证件号不能为空）'
    item.cellClassName.card_no = 'trouble-cell'
    error = true
  } else if (item.card_no.length > 40) {
    item.card_no = item.card_no + ' （证件号长度大于40个字符）'
    item.cellClassName.card_no = 'trouble-cell'
    error = true
  }
  // 校验国籍
  if (!item.import_nation_name) {
    item.import_nation_name = ' （国籍不能为空）'
    item.cellClassName.import_nation_name = 'trouble-cell'
    error = true
  } else if (item.import_nation_name.length > 20) {
    item.import_nation_name = item.import_nation_name + ' （国籍长度大于20个字符）'
    item.cellClassName.import_nation_name = 'trouble-cell'
    error = true
  }
  // 校验性别
  if (item.sex === undefined || item.sex === '') {
    item.sex = ' （性别不能为空）'
    item.cellClassName.sex = 'trouble-cell'
  } else if (dict.excelRecordSex.indexOf(item.sex) === -1) {
    item.sex = item.sex + ' （性别内容错误）'
    item.cellClassName.sex = 'trouble-cell'
  }
  // 校验地址
  if (item.address && item.address.length > 40) {
    item.address = item.address + ' （地址长度大于40个字符）'
    item.cellClassName.address = 'trouble-cell'
    error = true
  }
  // 校验联系电话
  if (item.phone && item.phone.length > 20) {
    item.phone = item.phone + ' （联系电话长度大于20个字符）'
    item.cellClassName.phone = 'trouble-cell'
    error = true
  }
  if (error) {
    let num = index + 1
    console.log('错误的数据在' + num + '行', item)
  }
  return { error: error, item: item }
}
